package com.hy.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hy.entity.Lesson;
import java.util.List;

public interface LessonService extends IService<Lesson> {

    /**
     * 获取所有课程列表
     */
    List<Lesson> getAllLessons();

    /**
     * 根据ID获取课程
     */
    Lesson getLessonById(Long id);

    /**
     * 添加课程
     */
    boolean addLesson(Lesson lesson);

    /**
     * 修改课程
     */
    boolean updateLesson(Lesson lesson);

    /**
     * 删除课程
     */
    boolean deleteLesson(Long id);

    /**
     * 根据教师ID获取课程列表
     */
    List<Lesson> getLessonsByTeacherId(Long teacherId);

    /**
     * 分页条件查询课程
     * @param pageNum 页码
     * @param pageSize 每页数量
     * @param lessonName 课程名称（可选）
     * @param teacherId 教师ID（可选）
     * @return 分页结果
     */
    Page<Lesson> pageLessons(int pageNum, int pageSize, String lessonName, Integer teacherId);
}
